package com.hzw.saas.common.storage.pojo;

import com.hzw.saas.common.storage.enums.LocChunkStatusEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 定位型分片存储信息
 * 文件分片使用起止字节位（从1开始）标识分片在文件中的位置
 * 此模式适用于指定分片合并或更新文件指定位置的数据，多用于文件同步，需配合记录分片ID
 *
 * @author zzl
 * @since 04/13/2021
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class LocChunkStorage extends ChunkStorage {

    private static final long serialVersionUID = 1L;

    /**
     * 分片ID
     * 必填
     */
    private String chunkId;

    /**
     * 起始字节数，从1开始
     * 必填
     */
    private Long startBytes;

    /**
     * 结束字节数
     * 必填
     */
    private Long endBytes;

    /**
     * 分片状态
     * 必填
     * @see LocChunkStatusEnum
     */
    private Integer status;

}
